import { IPSSysContent } from './ipssys-content';
import { IPSSystemModule } from '../system/ipssystem-module';
import { IPSModelObject } from '../ipsmodel-object';

/**
 *
 * 子接口类型识别属性[]
 * @export
 * @interface IPSSysContentCat
 */
export interface IPSSysContentCat extends IPSModelObject {
  /**
   * 分类标记
   * @type {string}
   */
  catTag: string;

  /**
   * 分类标记2
   * @type {string}
   */
  catTag2: string;

  /**
   * 代码标识
   * @type {string}
   */
  codeName: string;

  /**
   * 内容集合
   *
   * @type {IPSSysContent[]}
   */
  getPSSysContents(): IPSSysContent[] | null;

  /**
   * 内容集合
   *
   * @type {IPSSysContent[]}
   */
  get psSysContents(): IPSSysContent[] | null;

  findPSSysContent(objKey: any): IPSSysContent | null;

  /**
   * 系统模块
   *
   * @type {IPSSystemModule}
   */
  getPSSystemModule(): IPSSystemModule | null;

  /**
   * 系统模块
   *
   * @type {IPSSystemModule}
   */
  get psSystemModule(): IPSSystemModule | null;

  /**
   * 系统模块（必须存在）
   *
   * @type {IPSSystemModule}
   */
  getPSSystemModuleMust(): IPSSystemModule;
}
